package com.hmdp.utils;

/**
 * @Author: X_x
 * @Packaqe: com.hmdp.utils
 * @Project: hm-dianping
 * @name: ILock
 * @Date: 2024/8/29  11:14
 */
public interface ILock {

    /**
     * 尝试获取锁
     * @param timeoutSec 锁持有的超时时间，过期自动释放
     * @return true代表锁成功，false代表锁失败 *非阻塞  不会在失败后重试或等待
     */
    boolean tryLock (long timeoutSec);

    /**
     * 释放锁
     */
    void unlock();
}
